﻿using DapperExtensions;
using Newtonsoft.Json;
using System;

namespace ET_DbCommon.Model
{
    [Table("exam_testquestion_task_step")]
    public partial class Exam_TestQuestion_Task_StepModel : Entity
    {
        /// <summary>
        /// 任务索引
        /// </summary>
        public int ExamTaskId { get; set; }

        /// <summary>
        /// 操作索引
        /// </summary>
        public int OperateId { get; set; }

        /// <summary>
        /// 步骤参数
        /// </summary>
        public string Parameter { get; set; }

        /// <summary>
        /// 步骤分数
        /// </summary>
        public decimal Score { get; set; }

        /// <summary>
        /// 系统类型;设备所属系统：ATS、VR、ISCS
        /// </summary>
        public string SysType { get; set; }

        /// <summary>
        /// 任务类型;仿真；任务
        /// </summary>
        public string TaskType { get; set; }

        /// <summary>
        /// 步骤描述
        /// </summary>
        public string Describes { get; set; }

        /// <summary>
        /// 设备类型
        /// </summary>
        public int DevicetypeId { get; set; }

        /// <summary>
        /// 设备索引
        /// </summary>
        public string DeviceId { get; set; }

        /// <summary>
        /// 任务内容
        /// </summary>
        public string StepContent { get; set; }

        /// <summary>
        /// 前提条件;前提条件：以Json字符串格式保存
        /// </summary>
        public string Prerequisite { get; set; }

        /// <summary>
        /// 关键词;关键词，多个关键词以英文逗号隔开
        /// </summary>
        public string KeyWords { get; set; }

        /// <summary>
        /// 操作超时时长;步骤操作超时，自动跳转下一步。单位：秒
        /// </summary>
        public int TimeOut { get; set; }

        /// <summary>
        /// 超时扣分
        /// </summary>
        public decimal Duration { get; set; }

        /// <summary>
        /// 是否持续性判断
        /// </summary>
        public string IsContinued { get; set; }

        /// <summary>
        /// 角色
        /// </summary>
        public string RoleId { get; set; }

        /// <summary>
        /// 试卷任务索引
        /// </summary>
        public int TaskId { get; set; }

        /// <summary>
        /// 执行状态;未执行；执行中；已执行
        /// </summary>
        public string ExcuteState { get; set; }
        /// <summary>
        /// 界面和步骤顺序
        /// </summary>
        public int UIOrder { get; set; }
        /// <summary>
        /// 试卷中的步骤Id索引
        /// </summary>
        public int PaperStepId { get; set; }
        /// <summary>
        /// 步骤得分;步骤得分
        /// </summary>
        public decimal Result { get; set; }
        /// <summary>
        /// 步骤执行时间
        /// </summary>
        [Computed]
        public DateTime ExcuteTime { get; set; }
        /// <summary>
        /// 步骤执行时间
        /// </summary>
        [Computed]
        public string OperateContent { get; set; }

        /// <summary>
        /// 扩展属性
        /// </summary>
        [Computed]
        public string Remark { get; set; }
        /// <summary>
        /// 未登录的则由AI来执行默认为False
        /// </summary>
        [Computed]
        public bool AI { get; set;}
    }
}
